package com.alks.function.mapper.finance.salary;


import com.alks.entity.data.entity.PcStitchProdDetail;
import com.alks.function.data.dto.finance.fincons.LotNoDto;
import com.alks.function.data.dto.finance.salary.SalaryStitchInventoryDto;
import com.alks.function.data.request.finance.salary.SalaryStitchInventoryRequest;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Set;

@Mapper
public interface SalaryStitchInventoryMapper {

    /*指令产量明细*/
    List<SalaryStitchInventoryDto> getLotProductDetails(@Param("companyId") String companyId, @Param("request") SalaryStitchInventoryRequest request);

    /*更新件资*/
    int updateBatchPcStitchProdDetail(@Param("companyId") String companyId, @Param("list") List<PcStitchProdDetail> detailList);

    /*查询员工汇总*/
    List<SalaryStitchInventoryDto> getEmployeeSummary(@Param("companyId") String companyId, @Param("request") SalaryStitchInventoryRequest request);

    /*查询员工汇总pdf*/
    List<SalaryStitchInventoryDto> getEmployeeSummaryByPdf(String companyId, SalaryStitchInventoryRequest request);

    /*先查改结算月份的指令*/
    List<SalaryStitchInventoryDto> getLotBySettlementMonth(@Param("companyId") String companyId, @Param("request") SalaryStitchInventoryRequest request);

    /*根据指令查询所有该月份指令汇总*/
    List<SalaryStitchInventoryDto> getMonthSummaryDetails(@Param("companyId") String companyId, @Param("request") SalaryStitchInventoryRequest request);

    /*查询指令产量明细的完工数量和金额*/
    SalaryStitchInventoryDto getLotProductCount(String companyId, SalaryStitchInventoryRequest request);

    /*批量根据指令查询*/
    List<SalaryStitchInventoryDto> queryLotDetails(@Param("companyId") String companyId, @Param("list") List<String> list);
}
